home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / INTER52D.ZIP / MSR.LST < prev    next >
File List  |  1996-10-20  |  31KB  |  875 lines

  1. MODEL-SPECIFIC REGISTERS    Release 52        Last change 20oct96
  2. Copyright (c) 1996 Ralf Brown
  3.  
  4. ----------S00000000--------------------------
  5. MSR 00000000h - Pentium - MACHINE CHECK EXCEPTION ADDRESS
  6. Size:    32-36 bits
  7. Access:    Read
  8. Desc:    on any Machine Check exception (INT 12), this MSR contains the physical
  9.       address at which the exception occurred
  10. Note:    also supported by AMD Am5k86 and PentiumPro (P6)
  11. SeeAlso: MSR 00000001h,MSR 80000000h,INT 12"MACHINE CHECK"
  12. ----------S00000001--------------------------
  13. MSR 00000001h - Pentium - MACHINE CHECK EXCEPTION TYPE
  14. Size:    6 bits
  15. Access:    Read
  16. Desc:    when a Machine Check exception occurs, this register contains the
  17.       reason for the exception
  18. Note:    also supported by AMD Am5k86 and PentiumPro (P6)
  19. SeeAlso: MSR 00000000h,MSR 80000001h,INT 12"MACHINE CHECK"
  20.  
  21. Bitfields for Machine Check Exception type (MSR 00000001h):
  22. Bit(s)    Description    (Table R001)
  23.  63-6    reserved (0)
  24.  5    "FERI" Fan Error Indicator (Pentium OverDrive only) -- CPU overheated
  25.  4    bus cycle causing exception was locked
  26.  3    state of M/IO# pin during bus cycle
  27.  2    state of D/C# pin during bus cycle
  28.  1    state of W/R# pin during bus cycle
  29.  0    Machine Check pending (cleared by reading this MSR)
  30. ----------S00000002--------------------------
  31. MSR 00000002h - Pentium - (TR1) PARITY REVERSAL TEST REGISTER
  32. Size:    14 bits
  33. Access:    Write
  34. SeeAlso: MSR 00000004h,MSR 80000002h
  35.  
  36. Bitfields for Parity Reversal Test Register (TR1):
  37. Bit(s)    Description    (Table R002)
  38.  63-14    reserved (0)
  39.  13    microcode
  40.  12    Data TLB data
  41.  11    Data TLB tag
  42.  10    Data Cache data
  43.  9    Data Cache tag
  44.  8    Code TLB data
  45.  7    Code TLB tag
  46.  6    "ID3" data cache odd bits 129-255
  47.  5    "ID2" data cache even bits 128-254
  48.  4    "ID1" data cache odd bits 1-127
  49.  3    "ID0" data cache even bits 0-126
  50.  2    instruction cache tag
  51.  1    do not go into SHUTDOWN mode on parity error
  52.  0    enable parity errors
  53. Note:    bits 2-13 indicate that the parity should be reversed for the given
  54.       subsystem, thus always forcing a parity error
  55. ----------S00000003--------------------------
  56. MSR 00000003h - Pentium - INVALID
  57. Note:    attempted accesses to this MSR cause an exception
  58. SeeAlso: MSR 80000003h,MSR 0000000Fh
  59. ----------S00000004--------------------------
  60. MSR 00000004h - Pentium - (TR2) INSTRUCTION CACHE END BITS
  61. Size:    4 bits
  62. Access:    Read/Write
  63. SeeAlso: MSR 00000002h,MSR 00000005h,MSR 80000004h
  64.  
  65. Bitfields for Instruction Cache End Bits (TR2):
  66. Bit(s)    Description    (Table R003)
  67.  63-4    reserved (0)
  68.  3-0    end bits
  69. SeeAlso: #R004
  70. ----------S00000005--------------------------
  71. MSR 00000005h - Pentium - (TR3) CACHE DATA TEST REGISTER
  72. Size:    32 bits
  73. Access:    Read/Write
  74. SeeAlso: MSR 00000004h,MSR 00000006h,MSR 80000005h
  75.  
  76. Bitfields for Cache Data Test Register (TR3):
  77. Bit(s)    Description    (Table R004)
  78.  63-32    reserved (0)
  79.  31-0    data read/written from/to cache (code or data)
  80. SeeAlso: #R005
  81. ----------S00000006--------------------------
  82. MSR 00000006h - Pentium - (TR4) CACHE TAG
  83. Size:    32 bits
  84. Access:    Read/Write
  85. SeeAlso: MSR 00000005h,MSR 00000007h,MSR 80000006h
  86.  
  87. Bitfields for Cache Tag Test Register (TR4):
  88. Bit(s)    Description    (Table R005)
  89.  63-32    reserved (0)
  90.  31-8    cache tag (bits 35-12 of address)
  91.  8-3    reserved (0)
  92.  2    LRU
  93.  1-0    Valid
  94.     ---code cache (selected by TR5)---
  95.     x0 cache line invalid
  96.     x1 cache line valid
  97.     ---data cache (selected by TR5)---
  98.     00 cache line invalid
  99.     01 cache line shared
  100.     10 cache line exclusive
  101.     11 cache line modified
  102. SeeAlso: #R004,#R006
  103. ----------S00000007--------------------------
  104. MSR 00000007h - Pentium - (TR5) CACHE CONTROL
  105. Size:    15 bits
  106. Access:    Write
  107. SeeAlso: MSR 00000006h,MSR 00000008h,MSR 80000007h
  108.  
  109. Bitfields for Cache Control Test Register (TR5):
  110. Bit(s)    Description    (Table R006)
  111.  63-15    reserved (0)
  112.  14    cache write-back mode (instead of write-through) enabled
  113.  13    select data cache instead of code cache
  114.  12    select Way within cache set
  115.  11-5    cache set number
  116.  4-2    buffer select (specify which 32-bit portion of cache line to access)
  117.  1-0    control
  118.     00 normal operation
  119.     01 test write
  120.     10 test read
  121.     11 flush (action controlled by TR7)
  122. SeeAlso: #R004,#R005
  123. ----------S00000008--------------------------
  124. MSR 00000008h - Pentium - (TR6) TLB COMMAND
  125. Size:    32 bits
  126. Access:    Read/Write
  127. SeeAlso: MSR 00000007h,MSR 00000009h,MSR 80000008h
  128.  
  129. Bitfields for Pentium TLB Command Test Register:
  130. Bit(s)    Description    (Table R007)
  131.  63-32    reserved (0)
  132.  31-12    linear address
  133.  11    TLB entry is valid
  134.  10    page is dirty (has been written to)
  135.  9    page may only be accessed from Ring 0
  136.  8    page may be written
  137.  7-3    reserved (0)
  138.  2    page is 4M instead of 4K
  139.  1    data TLB instead of code TLB
  140.  0    operation (0=write, 1=read)
  141. SeeAlso: #R008
  142. ----------S00000009--------------------------
  143. MSR 00000009h - Pentium - (TR7) TLB DATA
  144. Size:    32 bits
  145. Access:    Read/Write
  146. SeeAlso: MSR 00000008h,MSR 0000000Bh,MSR 80000009h
  147.  
  148. Bitfields for Pentium TLB Data Test Register (TR7):
  149. Bit(s)    Description    (Table R008)
  150.  63-32    reserved (0)
  151.  31-12    physical address
  152.  11    Page Cache Disable
  153.  10    Page Write-Through
  154.  9-7    TLB Least-Recently Used value
  155.  6-5    reserved (0)
  156.  4    Hit Indicator
  157.  3-2    TLB entry number
  158.  1-0    reserved (0)
  159. Note:    if a write with bit 4 (Hit Indicator) set is followed by a read, the
  160.       value returned in bit 4 indicates whether the selected address was
  161.       found in the TLB; if found, bits 3-2 indicate which entry contained
  162.       the hit
  163. SeeAlso: #R007,#R009
  164. ----------S0000000A--------------------------
  165. MSR 0000000Ah O - Pentium A-step - (TR8) 36-BIT TLB DATA TEST REGISTER
  166. Size:    4 bits
  167. Note:    attempted accesses to this MSR cause an exception on any Pentium except
  168.       A-step chips, since the 36-bit physical addressing feature was
  169.       removed from the Pentium prior to general release
  170. SeeAlso: MSR 8000000Ah
  171.  
  172. Bitfields for Pentium A-step 36-bit addressing Test Register (TR8):
  173. Bit(s)    Description    (Table R009)
  174.  63-4    reserved (0)
  175.  3-0    high bits of physical address (A35-A32)
  176. SeeAlso: #R008
  177. ----------S0000000B--------------------------
  178. MSR 0000000Bh - Pentium - (TR9) BRANCH TARGET BUFFER TAG
  179. Size:    32 bits
  180. Access:    Read/Write
  181. SeeAlso: MSR 00000009h,MSR 0000000Ch,MSR 8000000Bh
  182.  
  183. Bitfields for Pentium Branch Target Buffer Tag (TR9):
  184. Bit(s)    Description    (Table R010)
  185.  63-32    reserved (0)
  186.  31-8    tag address
  187.  7-2    reserved (0)
  188.  1-0    history (state of current branch)
  189. SeeAlso: #R011,#R012
  190. ----------S0000000C--------------------------
  191. MSR 0000000Ch - Pentium - (TR10) BRANCH TARGET BUFFER TARGET
  192. Size:    32 bits
  193. Access:    Read/Write
  194. SeeAlso: MSR 0000000Bh,MSR 0000000Dh,MSR 8000000Ch
  195.  
  196. Bitfields for Pentium Branch Target Buffer Target (TR10):
  197. Bit(s)    Description    (Table R011)
  198.  63-32    reserved (0)
  199.  31-0    target address
  200. SeeAlso: #R010,#R012
  201. ----------S0000000D--------------------------
  202. MSR 0000000Dh - Pentium - (TR11) BRANCH TARGET BUFFER CONTROL
  203. Size:    12 bits
  204. Access:    Write
  205. SeeAlso: MSR 0000000Ch,MSR 0000000Eh,MSR 8000000Dh
  206.  
  207. Bitfields for Pentium Branch Target Buffer Control (TR11):
  208. Bit(s)    Description    (Table R012)
  209.  63-12    reserved (0)
  210.  11-8    BTB set number to access
  211.  7-4    reserved (0)
  212.  3-2    BTB entry (way) within set
  213.  1-0    test command
  214.     00 normal operation
  215.     01 test write
  216.     10 test read
  217.     11 flush
  218. SeeAlso: #R010,#R011
  219. ----------S0000000E--------------------------
  220. MSR 0000000Eh - Pentium - (TR12) NEW FEATURE CONTROL
  221. Size:    10 bits
  222. Access:    Write
  223. SeeAlso: MSR 0000000Dh,MSR 8000000Eh
  224.  
  225. Bitfields for Pentium New Feature Control (TR12):
  226. Bit(s)    Description    (Table R013)
  227.  63-10    reserved (0)
  228.  9    enable I/O instruction restart for SMM and use different interrupt
  229.       priority
  230.  8    generate fast branch-trace message bus cycles
  231.  7    ???
  232.  6    disable auto-halt feature (P54C only)
  233.  5    ???
  234.  4    disable internal APIC
  235.  3    Cache Inhibit (disable internal L1 cache)
  236.  2    Single-Pipe Execution (disable V pipeline)
  237.  1    enable special branch trace message cycle on BTB hit (default = 0)
  238.  0    disable branch prediction (no BTB)
  239. ----------S0000000F--------------------------
  240. MSR 0000000Fh - Pentium - INVALID
  241. Note:    attempted accesses to this MSR cause an exception
  242. SeeAlso: MSR 8000000Fh,MSR 00000003h
  243. ----------S00000010--------------------------
  244. MSR 00000010h - Pentium - TIME STAMP REGISTER
  245. Size:    64 bits
  246. Access:    Read/Write
  247. SeeAlso: MSR 80000010h
  248. ----------S00000011--------------------------
  249. MSR 00000011h - Pentium - EVENT COUNTER SELECTION AND CONTROL
  250. Size:    26 bits
  251. Access:    Read/Write
  252. SeeAlso: MSR 00000012h,MSR 00000013h,MSR 80000011h
  253.  
  254. Bitfields for Pentium Event Counter Control:
  255. Bit(s)    Description    (Table R014)
  256.  63-26    reserved (0)
  257.  25    external pin PM1 shows counter overflows instead of counter increments
  258.  24    counter 1 counts clock cycles instead of events
  259.  23    enable counter 1 counting in CPL3
  260.  22    enable counter 1 counting in CPL2-0
  261.  21-16    event type for counter 1 (see #R015)
  262.  15-10    reserved
  263.  9    external pin PM0 shows counter overflows instead of counter increments
  264.  8    counter 0 counts clock cycles instead of events
  265.  7    enable counter 0 counting in CPL3
  266.  6    enable counter 0 counting in CPL2-0
  267.  5-0    event type for counter 0 (see #R015)
  268.  
  269. (Table R015)
  270. Values for Pentium Event Counter event type:
  271.  00h    data read
  272.  01h    data write
  273.  02h    data TLB miss
  274.  03h    data read miss
  275.  04h    data write miss
  276.  05h    write hit to Modified/Exclusive cache line
  277.  06h    data cache lines written back
  278.  07h    data cache snoops
  279.  08h    data cache snoop hits
  280.  09h    simultaneous memory accesses in both pipes
  281.  0Ah    data bank access conflict between U and V pipes
  282.  0Bh    misaligned data memory references
  283.  0Ch    code read
  284.  0Dh    code TLB miss
  285.  0Eh    code cache miss
  286.  0Fh    any segment register load
  287.  10h    segment descriptor cache accessed
  288.  11h    segment descriptor cache hit
  289.  12h    any branch
  290.  13h    BTB hit
  291.  14h    taken branch / BTB hit
  292.  15h    pipeline flushes
  293.  16h    total instructions executed
  294.  17h    instruction executed in V pipe
  295.  18h    bus utilization
  296.  19h    pipeline stalled by write backups
  297.  1Ah    pipeline stalled by data memory read
  298.  1Bh    pipeline stalled by write to Modified/Exclusive cache line
  299.  1Ch    locked bus cycle
  300.  1Dh    I/O cycle
  301.  1Eh    non-cacheable memory references
  302.  1Fh    pipeline stalled by Address Generation Interlock
  303.  20h    reserved
  304.  21h    reserved
  305.  22h    floating-point operations
  306.  23h    Breakpoint 0 match
  307.  24h    Breakpoint 1 match
  308.  25h    Breakpoint 2 match
  309.  26h    Breakpoint 3 match
  310.  27h    hardware interrupt
  311.  28h    data read or data write
  312.  29h    data read/write miss
  313.  2Ah-3Fh reserved
  314. SeeAlso: #R014
  315. ----------S00000012--------------------------
  316. MSR 00000012h - Pentium - EVENT COUNTER #0
  317. Size:    40 bits
  318. Access:    Read/Write
  319. SeeAlso: MSR 00000011h,MSR 00000013h,MSR 80000012h
  320. ----------S00000013--------------------------
  321. MSR 00000013h - Pentium - EVENT COUNTER #1
  322. Size:    40 bits
  323. Access:    Read/Write
  324. SeeAlso: MSR 00000011h,MSR 00000012h,MSR 80000013h
  325. ----------S00000014--------------------------
  326. MSR 00000014h - Pentium P54C - ???
  327. ----------S0000001B--------------------------
  328. MSR 0000001Bh - Pentium Pro - APIC BASE ADDRESS
  329. SeeAlso: MEM FEE00000h
  330.  
  331. Bitfields for Pentium Pro MSR 0000001Bh:
  332. Bit(s)    Description    (Table R016)
  333.  63-12    ???
  334.  11    APIC global enable (can not be cleared except through hard reset)
  335.  10-9    reserved
  336.  8    BootStrap Processor
  337.  7-0    ???
  338. ----------S0000002A--------------------------
  339. MSR 0000002Ah - Pentium Pro - "EBL_CR_POWERON"
  340. Size:    32 bits
  341. Access:    Read/write
  342.  
  343. Bitfields for Pentium Pro MSR 0000002Ah:
  344. Bit(s)    Description    (Table R017)
  345.  0    data bus uses ECC instead of parity
  346.  1    disable data error checking
  347.  2    disable response error checking
  348.  3    disable AERR# drive
  349.  4    disable BERR# for initiator bus requests
  350.  6    disable BERR# for initiator internal errors
  351.  7    disable BINIT# drive
  352.  8    output tri-state enabled
  353.  9    Execute-BIST enabled
  354.  10    (read-only) AERR# observation enabled
  355.  12    (read-only) BINIT# observation enabled
  356.  13    (read-only) IN Order Queue depth is 1 instead of 8
  357.  14    (read-only) Power-on Reset Vector at 1M instead of 4G
  358.  15    (read-only) FRC mode enabled
  359.  17-16    (read-only) APIC cluster ID
  360.  19-18    ???
  361.  21-20    (read-only) symmetric arbitration ID
  362.  24-22    (read-only) clock frequency ratio
  363.  25    reserved
  364.  26    (read-only) Low Power enable
  365.  31-27    reserved
  366. ----------S00000079--------------------------
  367. MSR 00000079h - Pentium Pro - BIOS UPDATE TRIGGER
  368. Size:    32 bits
  369. Access:    Write
  370. Desc:    writing the linear address of a microcode update block (see #0434)
  371.       to this MSR cause the CPU to initiate a microcode load
  372. SeeAlso: INT 15/AX=D042h/BL=01h,MSR 0000008Bh
  373. ----------S00000082--------------------------
  374. MSR 00000082h - AMD Am5k86 - ARRAY ACCESS REGISTER
  375. Size:    64 bits
  376. SeeAlso: MSR 00000083h
  377.  
  378. Bitfields for AMD Am5k86 Array Access Register:
  379. Bit(s)    Description    (Table R018)
  380.  63-32    array pointer (see #R019)
  381.  31-0    array data
  382. SeeAlso: #R020
  383.  
  384. (Table R019)
  385. Values for AMD Am5k86 Array Pointer:
  386.  E0h    data cache (data)
  387.  E1h    data cache (linear tag)
  388.  E4h    code cache (instruction)
  389.  E5h    code cache (linear tag)
  390.  E6h    code cache (valid bits)
  391.  E7h    code cache (branch-prediction bits)
  392.  E8h    4K TLB (page)
  393.  E9h    4K TLB (linear tag)
  394.  EAh    4M TLB (page)
  395.  EBh    4M TLB (linear tag)
  396.  ECh    data cache (physical tag)
  397.  EDh    code cache (physical tag)
  398. SeeAlso: #R018
  399. ----------S00000083--------------------------
  400. MSR 00000083h - AMD Am5k86 - HARDWARE CONFIGURATION REGISTER
  401. Size:    8 bits
  402. SeeAlso: MSR 00000082h
  403.  
  404. Bitfields for AMD Am5k86 Hardware Configuration Register:
  405. Bit(s)    Description    (Table R020)
  406.  63-8    reserved
  407.  7    disable data cache
  408.  6    disable instruction cache
  409.  5    disable branch prediction
  410.  4    reserved
  411.  3-1    debug control
  412.     000 off
  413.     001 enable branch trace
  414.     100 enable Probe Mode on debug trap
  415.  0    disable Stopping Processor Clock
  416. SeeAlso: #R018
  417. ----------S0000008B--------------------------
  418. MSR 0000008Bh - Pentium Pro - "BIOS_SIGN" BIOS UPDATE SIGNATURE
  419. Size:    64 bits
  420. Access:    Read/Write
  421. Desc:    used to determine which (if any) microcode update has been loaded into
  422.       the CPU
  423. Notes:    whenever a microcode update is loaded, the PentiumPro modifies the
  424.       operation of the CPUID instruction to store both the standard CPUID
  425.       model information and a 32-bit microcode update ID into this MSR; if
  426.       no microcode update has been loaded, the MSR remains unchanged
  427.       (it is normally cleared to 0 before using CPUID to test for updates)
  428.     the low 32 bits of this register (if modified by CPUID) contains the
  429.       standard model/stepping information, while the high 32 bits contain
  430.       the microcode update ID
  431. SeeAlso: MSR 00000079h
  432. ----------S000000C1--------------------------
  433. MSR 000000C1h - Pentium Pro - "PERFCTR0"
  434. SeeAlso: MSR 000000C2h
  435. ----------S000000C2--------------------------
  436. MSR 000000C2h - Pentium Pro - "PERFCTR1"
  437. SeeAlso: MSR 000000C1h
  438. ----------S000000FE--------------------------
  439. MSR 000000FEh - Pentium Pro - "MTRRcap"
  440. Desc:    determine how many and what type of Memory Type Range Registers are
  441.       implemented
  442. SeeAlso: MSR 00000200h,MSR 00000250h,MSR 000002FFh
  443. ----------S00000179--------------------------
  444. MSR 00000179h - Pentium Pro - "MCG_CAP"
  445. SeeAlso: MSR 0000017Ah,MSR 0000017Bh
  446. ----------S0000017A--------------------------
  447. MSR 0000017Ah - Pentium Pro - "MCG_STATUS"
  448. SeeAlso: MSR 00000179h,MSR 0000017Bh
  449. ----------S0000017B--------------------------
  450. MSR 0000017Bh - Pentium Pro - "MCG_CTL"
  451. SeeAlso: MSR 00000179h,MSR 0000017Ah
  452. ----------S00000186--------------------------
  453. MSR 00000186h - Pentium Pro - "EVNTSEL0"
  454. Size:    32 bits
  455. Access:    Read/Write
  456. SeeAlso: MSR 00000187h,MSR 00000011h,MSR 00000012h
  457.  
  458. Bitfields for Pentium Pro Event Selection MSR:
  459. Bit(s)    Description    (Table R021)
  460.  7-0    event type
  461.  15-8    UMASK (Unit Mask register; set to 0 to enable all count options)
  462.  16    USER (enable counting in rings 1,2,3)
  463.  17    OS (enable counting in ring 0)
  464.  18    count occurrences, not duration
  465.  19    signal performance counter overflows via BP0/BP1 pin
  466.  20    signal performance counter overflows via APIC input
  467.  22    enable counting of events
  468.  23    invert result of CMASK condition
  469.  31-24    CMASK (counter mask)
  470. ----------S00000187--------------------------
  471. MSR 00000187h - Pentium Pro - "EVNTSEL1"
  472. Size:    32 bits
  473. Access:    Read/Write
  474. SeeAlso: MSR 00000186h,#R021,MSR 00000011h,MSR 00000013h
  475. ----------S000001D9--------------------------
  476. MSR 000001D9h - Pentium Pro - "DEBUGCTLMSR"
  477.  
  478. Bitfields for Pentium Pro Debugging Control MSR:
  479. Bit(s)    Description    (Table R022)
  480.  0    enable Last Branch records (see MSR 000001DBh,MSR 000001DCh)
  481.  1    Branch Trap Flag
  482.  2    performance monitor/Breakpoint pins
  483.  3    performance monitor/Breakpoint pins
  484.  4    performance monitor/Breakpoint pins
  485.  5    performance monitor/Breakpoint pins
  486.  6    enable execution trace messages
  487.  13-7    reserved
  488.  14    enable execution trace messages
  489.  15    enable execution trace messages
  490. ----------S000001DB--------------------------
  491. MSR 000001DBh - Pentium Pro - "LASTBRANCHFROMIP"
  492. SeeAlso: MSR 000001DCh,MSR 000001DDh
  493. ----------S000001DC--------------------------
  494. MSR 000001DCh - Pentium Pro - "LASTBRANCHTOIP"
  495. SeeAlso: MSR 000001DBh,MSR 000001DEh
  496. ----------S000001DD--------------------------
  497. MSR 000001DDh - Pentium Pro - "LASTINTFROMIP"
  498. SeeAlso: MSR 000001DBh,MSR 000001DEh
  499. ----------S000001DE--------------------------
  500. MSR 000001DEh - Pentium Pro - "LASTINTTOIP"
  501. SeeAlso: MSR 000001DCh,MSR 000001DDh
  502. ----------S000001E0--------------------------
  503. MSR 000001E0h - Pentium Pro - "ROB_CR_BKUPTMPDR6"
  504. Size:    >= 3 bits
  505.  
  506. Bitfields for Pentium Pro MSR 000001E0h:
  507. Bit(s)    Description    (Table R023)
  508.  63-3    ???
  509.  2    Fast String Enable (default is enabled)
  510.  1-0    reserved
  511. ----------S00000200--------------------------
  512. MSR 00000200h - Pentium Pro - "MTRRphysBase0"
  513. SeeAlso: MSR 000000FEh,MSR 00000201h,MSR 00000202h
  514. ----------S00000201--------------------------
  515. MSR 00000201h - Pentium Pro - "MTRRphysMask0"
  516. SeeAlso: MSR 000000FEh,MSR 00000200h,MSR 00000202h
  517. ----------S00000202--------------------------
  518. MSR 00000202h - Pentium Pro - "MTRRphysBase1"
  519. SeeAlso: MSR 000000FEh,MSR 00000200h,MSR 00000203h
  520. ----------S00000203--------------------------
  521. MSR 00000203h - Pentium Pro - "MTRRphysMask1"
  522. SeeAlso: MSR 000000FEh,MSR 00000201h,MSR 00000202h
  523. ----------S00000204--------------------------
  524. MSR 00000204h - Pentium Pro - "MTRRphysBase2"
  525. ----------S00000205--------------------------
  526. MSR 00000205h - Pentium Pro - "MTRRphysMask2"
  527. ----------S00000206--------------------------
  528. MSR 00000206h - Pentium Pro - "MTRRphysBase3"
  529. ----------S00000207--------------------------
  530. MSR 00000207h - Pentium Pro - "MTRRphysMask3"
  531. ----------S00000208--------------------------
  532. MSR 00000208h - Pentium Pro - "MTRRphysBase4"
  533. ----------S00000209--------------------------
  534. MSR 00000209h - Pentium Pro - "MTRRphysMask4"
  535. ----------S0000020A--------------------------
  536. MSR 0000020Ah - Pentium Pro - "MTRRphysBase5"
  537. ----------S0000020B--------------------------
  538. MSR 0000020Bh - Pentium Pro - "MTRRphysMask5"
  539. ----------S0000020C--------------------------
  540. MSR 0000020Ch - Pentium Pro - "MTRRphysBase6"
  541. ----------S0000020D--------------------------
  542. MSR 0000020Dh - Pentium Pro - "MTRRphysMask6"
  543. ----------S0000020E--------------------------
  544. MSR 0000020Eh - Pentium Pro - "MTRRphysBase7"
  545. ----------S0000020F--------------------------
  546. MSR 0000020Fh - Pentium Pro - "MTRRphysMask7"
  547. ----------S00000250--------------------------
  548. MSR 00000250h - Pentium Pro - "MTRRfix64K_00000"
  549. SeeAlso: MSR 000000FEh,MSR 00000200h,MSR 00000258h
  550. ----------S00000258--------------------------
  551. MSR 00000258h - Pentium Pro - "MTRRfix16K_80000"
  552. SeeAlso: MSR 000000FEh,MSR 00000250h,MSR 00000259h
  553. ----------S00000259--------------------------
  554. MSR 00000259h - Pentium Pro - "MTRRfix16K_A0000"
  555. ----------S00000268--------------------------
  556. MSR 00000268h - Pentium Pro - "MTRRfix4K_C0000"
  557. ----------S00000269--------------------------
  558. MSR 00000269h - Pentium Pro - "MTRRfix4K_C8000"
  559. ----------S0000026A--------------------------
  560. MSR 0000026Ah - Pentium Pro - "MTRRfix4K_D0000"
  561. ----------S0000026B--------------------------
  562. MSR 0000026Bh - Pentium Pro - "MTRRfix4K_D8000"
  563. ----------S0000026C--------------------------
  564. MSR 0000026Ch - Pentium Pro - "MTRRfix4K_E0000"
  565. ----------S0000026D--------------------------
  566. MSR 0000026Dh - Pentium Pro - "MTRRfix4K_E8000"
  567. ----------S0000026E--------------------------
  568. MSR 0000026Eh - Pentium Pro - "MTRRfix4K_F0000"
  569. ----------S0000026F--------------------------
  570. MSR 0000026Fh - Pentium Pro - "MTRRfix4K_F8000"
  571. ----------S000002FF--------------------------
  572. MSR 000002FFh - Pentium Pro - "MTRRdefType"
  573. SeeAlso: MSR 000000FEh,MSR 00000200h,MSR 00000250h
  574.  
  575. Bitfields for Pentium Pro MSR 000002FFh:
  576. Bit(s)    Description    (Table R024)
  577.  2-0    default memory type
  578.  10    Fixed MTRR enable
  579.  11    "MTRRenable"
  580. ----------S00000400--------------------------
  581. MSR 00000400h - Pentium Pro - "MC0_CTL"
  582. ----------S00000401--------------------------
  583. MSR 00000401h - Pentium Pro - "MC0_STATUS"
  584. ----------S00000402--------------------------
  585. MSR 00000402h - Pentium Pro - "MC0_ADDR"
  586. ----------S00000403--------------------------
  587. MSR 00000403h - Pentium Pro - "MC0_MISC"
  588. ----------S00000404--------------------------
  589. MSR 00000404h - Pentium Pro - "MC1_CTL"
  590. ----------S00000405--------------------------
  591. MSR 00000405h - Pentium Pro - "MC1_STATUS"
  592. ----------S00000406--------------------------
  593. MSR 00000406h - Pentium Pro - "MC1_ADDR"
  594. ----------S00000407--------------------------
  595. MSR 00000407h - Pentium Pro - "MC1_MISC"
  596. ----------S00000408--------------------------
  597. MSR 00000408h - Pentium Pro - "MC2_CTL"
  598. ----------S00000409--------------------------
  599. MSR 00000409h - Pentium Pro - "MC2_STATUS"
  600. ----------S0000040A--------------------------
  601. MSR 0000040Ah - Pentium Pro - "MC2_ADDR"
  602. ----------S0000040B--------------------------
  603. MSR 0000040Bh - Pentium Pro - "MC2_MISC"
  604. ----------S00001000--------------------------
  605. MSR 00001000h - IBM 386/486 SLC - PROCESSOR OPERATION REGISTER
  606. Size:    19 bits
  607. Access:    Read/Write
  608. SeeAlso: MSR 00001001h,MSR 00001002h
  609.  
  610. Bitfields for IBM 386/486 SLC Processor Operation Register:
  611. Bit(s)    Description    (Table R025)
  612.  63-19    reserved
  613.  18    (486SLC only) Low Power PLA
  614.  17    (486SLC only) Bus Read
  615.  16    (486SLC only) Cache Parity Generate Error
  616.  15    enable cacheability of NPX operands
  617.  14    enable PWI ADS
  618.  13    enable Low Power Halt Mode (HLT instruction stops CPU clock)
  619.  12    extended Out instruction (CPU waits for READY after any output)
  620.  11    cache reload bit
  621.  10    enable internal KEN# signal
  622.  9    disable cache lock mode
  623.  8    reserved
  624.  7    enable cache
  625.  6    enable DBCS
  626.  5    enable Power Interrupt
  627.  4    enable Flush Snooping
  628.  3    enable Snoop Input
  629.  2    address line A20 mask (see also #2033,#P075)
  630.  1    enable cache parity checking
  631.  0    Cache Parity Error occurred
  632. SeeAlso: #R026,#R027
  633. ----------S00001001--------------------------
  634. MSR 00001001h - IBM 386/486 SLC - CACHE REGION CONTROL REGISTER
  635. Size:    48 bits
  636. SeeAlso: MSR 00001000h,MSR 00001002h
  637.  
  638. Bitfields for IBM 386/486 SLC Cache Region Control Register:
  639. Bit(s)    Description    (Table R026)
  640.  63-48    reserved
  641.  47-32    extended memory cache memory limit (number of 64K blocks above 1M
  642.       which may be cached)
  643.  31-16    first megabyte read-only flags (each bit represents 64K)
  644.  15-0    first megabyte cacheable flags (each bit represents 64K)
  645. SeeAlso: #R025,#R027
  646. ----------S00001002--------------------------
  647. MSR 00001002h - IBM 386/486 SLC - PROCESSOR OPERATION REGISTER
  648. Size:    30 bits
  649. SeeAlso: MSR 00001000h,MSR 00001001h,MSR 00001004h
  650.  
  651. Bitfields for IBM 386/486 SLC Processor Operation Register:
  652. Bit(s)    Description    (Table R027)
  653.  63-30    reserved
  654.  29    enable External Dynamic Frequency Shift
  655.  28    Dynamic Frequency Shift ready
  656.  27    Dynamic Frequency Shift Mode
  657.  26-24    clocking mode
  658.     000 clock x1
  659.     011 clock doubler
  660.     100 clock tripler
  661.  23-0    reserved
  662. SeeAlso: #R025,#R026
  663. ----------S00001004--------------------------
  664. MSR 00001004h - IBM 486BL3 - PROCESSOR CONTROL REGISTER
  665. Size:    24 bits
  666. SeeAlso: MSR 00001000h
  667.  
  668. Bitfields for IBM 486BL3 Processor Control Register:
  669. Bit(s)    Description    (Table R028)
  670.  63-24    reserved
  671.  23    OS/2 boot (0=DD1 hardware, 1=DD0 hardware)
  672.  22    MOV CR0,x Decode
  673.     0: DD0, DD1A, DD1B, DD1D hardware
  674.     1: DD1C hardware
  675.  21    reserved
  676.  20    Cache Low Power (DD1 only: cache disabled when not in use)
  677.  19    reserved
  678.  18    NOP timing
  679.     0: 2 cycles on DD0, 3 cycles on DD1
  680.     1: 3 cycles on DD0, 2 cycles on DD1
  681.  17    bus pipelining for 16-bit accesses
  682.  16-5    ???
  683.  4    MOVS split
  684.  3    power-saving cache feature
  685.  2    reserved
  686.  1    enable MOV CRx decode
  687.     (reserved on DD1B, DD1C)
  688.  0    reserved
  689. SeeAlso: MSR 00001000h
  690. ----------S80000000--------------------------
  691. MSR 80000000h - Pentium - MACHINE CHECK EXCEPTION ADDRESS
  692. Size:    64 bits
  693. Access:    Read
  694. SeeAlso: MSR 00000000h,MSR 80000001h
  695. ----------S80000001--------------------------
  696. MSR 80000001h - Pentium - MACHINE CHECK EXCEPTION TYPE
  697. Size:    6 bits
  698. Access:    Read
  699. SeeAlso: MSR 00000001h,MSR 80000000h
  700. ----------S80000002--------------------------
  701. MSR 80000002h - Pentium - (TR1) PARITY REVERSAL TEST REGISTER
  702. Size:    14 bits
  703. Access:    Write
  704. SeeAlso: MSR 00000002h
  705. ----------S80000003--------------------------
  706. MSR 80000003h - Pentium - unimplemented
  707. SeeAlso: MSR 00000003h
  708. ----------S80000004--------------------------
  709. MSR 80000004h - Pentium - (TR2) INSTRUCTION CACHE END BITS
  710. Size:    4 bits
  711. Access:    Read/Write
  712. SeeAlso: MSR 00000004h
  713. ----------S80000005--------------------------
  714. MSR 80000005h - Pentium - (TR3) CACHE DATA TEST REGISTER
  715. Size:    32 bits
  716. Access:    Read/Write
  717. SeeAlso: MSR 00000005h
  718. ----------S80000006--------------------------
  719. MSR 80000006h - Pentium - (TR4) CACHE TAG
  720. Size:    32 bits
  721. Access:    Read/Write
  722. SeeAlso: MSR 00000006h
  723. ----------S80000007--------------------------
  724. MSR 80000007h - Pentium - (TR5) CACHE CONTROL
  725. Size:    15 bits
  726. Access:    Write
  727. SeeAlso: MSR 00000007h
  728. ----------S80000008--------------------------
  729. MSR 80000008h - Pentium - (TR6) TLB COMMAND
  730. Size:    32 bits
  731. Access:    Read/Write
  732. SeeAlso: MSR 00000008h
  733. ----------S80000009--------------------------
  734. MSR 80000009h - Pentium - (TR7) TLB DATA
  735. Size:    32 bits
  736. Access:    Read/Write
  737. SeeAlso: MSR 00000009h
  738. ----------S8000000A--------------------------
  739. MSR 8000000Ah O - Pentium A-step - (TR8) 36-BIT TLB DATA TEST REGISTER
  740. Size:    4 bits
  741. SeeAlso: MSR 0000000Ah,#R009
  742. ----------S8000000B--------------------------
  743. MSR 8000000Bh - Pentium - (TR9) BRANCH TARGET BUFFER TAG
  744. Size:    32 bits
  745. Access:    Read/Write
  746. SeeAlso: MSR 0000000Bh
  747. ----------S8000000C--------------------------
  748. MSR 8000000Ch - Pentium - (TR10) BRANCH TARGET BUFFER TARGET
  749. Size:    32 bits
  750. Access:    Read/Write
  751. SeeAlso: MSR 0000000Ch
  752. ----------S8000000D--------------------------
  753. MSR 8000000Dh - Pentium - (TR11) BRANCH TARGET BUFFER CONTROL
  754. Size:    12 bits
  755. Access:    Write
  756. SeeAlso: MSR 0000000Dh
  757. ----------S8000000E--------------------------
  758. MSR 8000000Eh - Pentium - (TR12) NEW FEATURE CONTROL
  759. Size:    10 bits
  760. Access:    Write
  761. SeeAlso: MSR 0000000Eh
  762. ----------S8000000F--------------------------
  763. MSR 8000000Fh - Pentium - ???
  764. Size:    1 bit???
  765. Access:    Write
  766. SeeAlso: MSR 0000000Fh
  767. ----------S80000010--------------------------
  768. MSR 80000010h - Pentium - TIME STAMP COUNTER
  769. Size:    64 bits
  770. Access:    Read/Write
  771. SeeAlso: MSR 00000010h
  772. ----------S80000011--------------------------
  773. MSR 80000011h - Pentium - EVENT COUNTER SELECTION AND CONTROL
  774. Size:    26 bits
  775. Access:    Read/Write
  776. SeeAlso: MSR 00000011h,MSR 80000012h,MSR 80000013h
  777. ----------S80000012--------------------------
  778. MSR 80000012h - Pentium - EVENT COUNTER #0
  779. Size:    40 bits
  780. Access:    Read/Write
  781. SeeAlso: MSR 00000012h,MSR 80000011h,MSR 80000013h
  782. ----------S80000013--------------------------
  783. MSR 80000013h - Pentium - EVENT COUNTER #1
  784. Size:    40 bits
  785. Access:    Read/Write
  786. SeeAlso: MSR 00000013h,MSR 80000011h,MSR 80000012h
  787. ----------S80000014--------------------------
  788. MSR 80000014h - Pentium - ???
  789. Access:    Read
  790. SeeAlso: MSR 00000014h
  791. ----------S80000015--------------------------
  792. MSR 80000015h - Pentium - unimplemented???
  793. ----------S80000016--------------------------
  794. MSR 80000016h - Pentium - unimplemented???
  795. ----------S80000017--------------------------
  796. MSR 80000017h - Pentium - unimplemented???
  797. ----------S80000018--------------------------
  798. MSR 80000018h - Pentium - ??? (PAGING-RELATED)
  799. Size:    4 bits???
  800. Access:    Read
  801. ----------S80000019--------------------------
  802. MSR 80000019h - Pentium - FLOATING POINT - LAST PREFETCHED OPCODE
  803. Size:    11 bits
  804. Access:    Read
  805. Desc:    this register stores the opcode of the last floating-point opcode to
  806.       be prefetched by the CPU
  807. SeeAlso: MSR 8000001Ah,MSR 8000001Bh
  808.  
  809. Bitfields for Pentium Floating-Point Opcode:
  810. Bit(s)    Description    (Table R029)
  811.  63-11    reserved (0)
  812.  10-8    low three bits of first byte of floating-point instruction
  813.  7-0    second byte of floating-point instruction
  814. Note:    both a standalone FWAIT and the instruction D8h 9Bh are represented
  815.       as 09Bh
  816. ----------S8000001A--------------------------
  817. MSR 8000001Ah - Pentium - FLOATING POINT - LAST NON-CONTROL OPCODE
  818. Size:    11 bits
  819. Access:    Read
  820. SeeAlso: MSR 80000019h,MSR 8000001Bh,#R029
  821. ----------S8000001B--------------------------
  822. MSR 8000001Bh - Pentium - FLOATING POINT - LAST EXCEPTION OPCODE
  823. Size:    11 bits
  824. Access:    Read/Write
  825. SeeAlso: MSR 80000019h,MSR 8000001Ah,#R029
  826. ----------S8000001C--------------------------
  827. MSR 8000001Ch - Pentium - ???
  828. Size:    4 bits???
  829. Access:    Read
  830. ----------S8000001D--------------------------
  831. MSR 8000001Dh - Pentium - PROBE MODE CONTROL REGISTER
  832. Size:    32 bits
  833. Access:    Read/Write
  834.  
  835. Bitfields for Probe Mode Control Register:
  836. Bit(s)    Description    (Table R030)
  837.  31    (read-only) System Management Mode is active
  838.  30-3    reserved (0)
  839.  2    PB1 monitors breakpoint #1 matches instead of performance counter #1
  840.  1    PB0 monitors breakpoint #0 matches instead of performance counter #0
  841.  0    ICEBP enabled (every debug exception enters Probe Mode)
  842. ----------S8000001E--------------------------
  843. MSR 8000001Eh - Pentium - ???
  844. Size:    32 bits
  845. Access:    Read/Write
  846. Note:    this may be nothing more than a scratchpad register
  847. SeeAlso: MSR 8000001Fh
  848. ----------S8000001F--------------------------
  849. MSR 8000001Fh - Pentium - ???
  850. Size:    32 bits
  851. Access:    Read/Write
  852. Note:    this may be nothing more than a scratchpad register
  853. SeeAlso: MSR 8000001Eh
  854. --------!---CREDITS--------------------------
  855. Christian Ludloff's 80x86.CPU
  856. Alex V. Potemkin's Opcodes List (OPCODES.LST)
  857. Intel Pentium Pro Family User's Guide, Volume 3, Appendix C
  858. --------!---Admin----------------------------
  859. Highest Table Number = R030
  860. --------!---FILELIST-------------------------
  861. Please redistribute all of the files comprising the interrupt list (listed at
  862. the beginning of the list and in INTERRUP.1ST) unmodified as a group, in a
  863. quartet of archives named INTER52A through INTER52D (preferably the original
  864. authenticated PKZIP archives), and the utility and hypertext conversion
  865. programs in three additional archives called INTER52E.ZIP to INTER52G.ZIP.
  866.  
  867. Copyright (c) 1989,1990,1991,1992,1993,1994,1995,1996 Ralf Brown
  868. --------!---CONTACT_INFO---------------------
  869. Internet: ralf@pobox.com (currently forwards to ralf@telerama.lm.com)
  870. UUCP: {uunet,harvard}!pobox.com!ralf
  871. FIDO: Ralf Brown 1:129/26.1
  872.     or post a message to me in the DR_DEBUG echo (I probably won't see it
  873.     unless you address it to me)
  874. CIS:  >INTERNET:ralf@pobox.com
  875.